/**
 * modules下的文件会自动挂载
 * 无需手动引入
 */
// import { defineStore } from "pinia";

// interface IAppStore {
//   [key: string]: ReturnType<typeof defineStore>;
// }

// const appStore: IAppStore = {} as IAppStore;

// /**
//  * 注册app状态库
//  */
// export const registerStore = () => {
//   const modules = import.meta.glob("./modules/*.ts", { eager: true });
//   for (let path in modules) {
//     let pathName = path.slice(path.lastIndexOf("/") + 1, -3);
//     // @ts-ignore
//     let defaultFunction = modules[path].default;
//     if (defaultFunction) {
//       appStore[pathName] = defaultFunction();
//     }
//   }
// };

// export default appStore;

/** 
 * 手动引入,并注册可知道类型提示
 */
import appSetting from "./modules/appSetting";
import user from "./modules/user";

interface IAppStore {
  appSetting: ReturnType<typeof appSetting>;
  user: ReturnType<typeof user>;
}

const appStore: IAppStore = {} as IAppStore;
/**
 * 注册app状态库
 */
export const registerStore = () => {
  appStore.appSetting = appSetting();
  appStore.user = user();
};
export default appStore;
